package com.zyh.scs.admin.api.entity.temporary;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.Date;

/**
 * @author hwh
 * @ClassName: 泛微导出员工实体类$
 * @Description: $
 * @Date $
 * @Version 1.0
 */
@Data
@Schema(description = "泛微导出员工实体类临时表")
@TableName("scsx_temporary_staff_info")
@Accessors(chain = true)
public class TemporaryStaffInfo implements Serializable {

    /**
     * 主键ID
     */
    @Schema(description = "主键id")
    @TableId(type = IdType.AUTO, value = "id")
    private Long id;

    /**
     * 任职信息主键
     */
    @TableField("duty_id")
    private String dutyId;

    /**
     * 变更类型
     */
    @TableField("apply_event")
    private String applyEvent;

    /**
     * 员工标识
     */
    @TableField("psn_id")
    private String psnId;

    /**
     * 所属公司
     */
    @TableField("corp_id")
    private String corpId;

    /**
     * 所属部门
     */
    @TableField("dept_id")
    private String deptId;

    /**
     * 部门编码
     */
    @TableField("org_code")
    private String orgCode;

    /**
     * 任职日期
     */
    @TableField("induty_date")
    private String indutyDate;

    /**
     * 最新到岗日期
     */
    @TableField("on_post_date")
    private String onpostDate;

    /**
     * 人员类别
     */
    @TableField("pns_class")
    private String pnsClass;

    /**
     * 人员类别名称
     */
    @TableField("pns_class_name")
    private String pnsClassName;

    /**
     * 人员岗位
     */
    @TableField("pns_job")
    private String pnsJob;

    /**
     * 是否为上级
     */
    @TableField("is_leader")
    private String isLeader;

    /**
     * 部门内排序值
     */
    @TableField("pns_order")
    private String pnsOrder;

    /**
     * 职级
     */
    @TableField("class_position")
    private String classPosition;

    /**
     * 职等
     */
    @TableField("grade_position")
    private String gradePosition;

    /**
     * 任职类型编码
     */
    @TableField("duty_code")
    private String dutyCode;

    /**
     * 任职类型名称
     */
    @TableField("duty_type")
    private String dutyType;

    /**
     * 岗位状态编码
     */
    @TableField("job_code")
    private String jobCode;

    /**
     * 岗位状态名称
     */
    @TableField("job_status")
    private String jobStatus;

    /**
     * 生效时间
     */
    @TableField("begin_time")
    private String beginTime;

    /**
     * 结束时间
     */
    @TableField("end_time")
    private String endTime;

    /**
     * 创建时间
     */
    @TableField("create_time")
    private Date createTime;

    /**
     * 修改时间
     */
    @TableField("modify_time")
    private Date modifyTime;

    /**
     * 日期
     */
    @TableField("pull_date")
    private Date pullDate;

    /**
     * 同步状态(1已同步 2未同步)
     */
    @TableField("pull_status")
    private String pullStatus;

    /**
     * 用户ID
     */
    @TableField("user_id")
    private String userId;

    /**
     * 账户中心接收到泛微数据的创建时间
     */
    @Schema(description = "账户中心接收到泛微数据的创建时间")
    @TableField("master_create_time")
    private LocalDateTime masterCreateTime;

    /**
     * 是否为新增 默认为1  新增为2
     */
    @TableField("is_insert")
    private Integer isInsert;
}
